You are here: FAQ > Documaker Standard Edition FAQ > Docupresentment Issues > What is the maximum length for an MQSeries message?

What is the maximum length for an MQSeries message?

The maximum length of an MQSeries message written is 100 MB (104 857 600 bytes).

To support messages larger than 4MB (4194304 bytes), which is the default value for the Maximum Message Length property for a queue manager object, queue object or Server Connection channel object, you have to change the value for the Maximum Message Length property for each of them. In MQ Explorer you do this on the Extended tab of the properties for each object.

For a typical IDS setup, you would have to change the Maximum Message Length property for the queue manager, request queue, result queue, and the server connection channel used.

For IDS version 1.8 and earlier

In version 1.8 and earlier, use a Client Connection Channel that will bind to a Server Connection Channel object that has been modified to support messages larger than 4MB. You do this by creating a Client Connection Channel for the same queue manager that contains the Server Connection Channel that has been modified. When you create the Client Connection Channel, you must...

Specify the same name as that of the Server Connection Channel

Use the IP address of the box hosting the queue manager as the Connection Name — be sure to include the port number for the listener, such as 10.1.10.101(1416)

Specify the same Maximum Message Length property value

Leave the queue manager field blank

Then restart the queue manager for the changes to take effect.

Next, copy the AMQCLCHL.TAB file for the queue manager onto the computer running IDS. The typical location of this file would be the following subdirectory:

qmgrs\queueManagerName\@ipcc

under the MQSeries installation directory, where queueManagerName represents the name of the queue manager you created. Each queue manager will have its own tab file.

The AMQCLCHL.TAB file, or Channel Definition Table, contains the client connection information you need to connect to the queue manager.

Once you copy the tab file to the computer running IDS, specify these system environment variables:

 

Variable

This variable

MQCHLLIB

Points to the path where the tab file is located.

MQCHLTAB

Contains the name of the tab file.

Here is an example:

MQCHLLIB = c:\docserv\ibm\tabfile
MQCHLTAB = AMQCLCHL.TAB

Then specify an asterisk (*) as the value for the queue manager in the server and client configuration files for IDS (you must also specify client mode). Here is an example:

< DBHandler:MQSeries >
	Client		= Yes
	QueueManager	= *

IDS should then be able to process messages larger than 4MB.

Note   You cannot use the MQServer system environment variable to process messages larger than 4MB because it has a 4MB message size limitation. Also, make sure you do not have an MQServer system environment variable defined because it will override the MQCHLLIB and MQCHLTAB system environment variables.

For IDS version 2.0 and higher

For IDS version 2.0 and higher, you just configure the queue manager, request queue, result queue, and Server Connection Channel to support messages larger than 4MB. Then restart the queue manager and specify the Server Connection Channel name along with all other MQ properties in the queue configuration section of the server and client configuration files for IDS.

It is a simpler configuration in IDS version 2.0 and higher because the Java code uses the MQEnvironment class which does not require any of the environment variables— it just needs to know the name of the Server Connection Channel that has been configured to support messages larger than 4MB.